package models;

import java.io.Serializable;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;

import javax.persistence.Id;

import com.googlecode.objectify.annotation.Indexed;
import com.googlecode.objectify.annotation.NotSaved;
import com.googlecode.objectify.annotation.Unindexed;

public class Domain implements Serializable{

	@Id private String name = "";

	@Unindexed private String title = "";

	@Unindexed private String keywords = "";
	
	@Unindexed private String popularKeywords = "";
	
	@Unindexed private String description = "";
	
	@Unindexed private int visitorPerDay;
	
	@Unindexed private List<String> category = new ArrayList<String>();
	
	@Unindexed private String age = "";
	
	@Unindexed private String programmingLanguage = "";
	
	@Unindexed private String webServer = "";
	
	@Unindexed private List<String> javascriptLibrary = new ArrayList<String>();
	
	@Unindexed private String ipAddress = "";
	
	@Unindexed private String whois = "";
	
	@Unindexed private String email = "";
	
	@Unindexed private String otherSiteOnHost = "";

	@Unindexed private String googleAnalytic = "";
	
	@Unindexed private String googleAdsense = "";
	
	@Indexed private int alexaGlobeRank = 0;
	
	@Unindexed private int googlePageRank = 0;
	
	@Unindexed private int analysisVisitorsCompete = 0;
	
	@Unindexed private int analysisVisitorsQuantcast = 0;
	
	@Unindexed private Date updated = new Date();
	
	@Unindexed private List<String> visitorCountryName = new ArrayList<String>();
	
	@Unindexed private List<String> visitorCountryPercent = new ArrayList<String>();
	
	@Unindexed private List<String> randomSites = new ArrayList<String>();
	
	@Indexed private int random = 0;
	
	@Unindexed private List<String> nearSites = new ArrayList<String>();
	
	public String getName() {
		return name;
	}

	public void setName(String name) {
		this.name = name;
	}

	public String getTitle() {
		return title;
	}

	public void setTitle(String title) {
		this.title = title;
	}

	public String getKeywords() {
		return keywords;
	}

	public void setKeywords(String keywords) {
		this.keywords = keywords;
	}

	public String getPopularKeywords() {
		return popularKeywords;
	}

	public void setPopularKeywords(String popularKeywords) {
		this.popularKeywords = popularKeywords;
	}

	public String getDescription() {
		return description;
	}

	public void setDescription(String description) {
		this.description = description;
	}

	public int getVisitorPerDay() {
		return visitorPerDay;
	}

	public void setVisitorPerDay(int visitorPerDay) {
		this.visitorPerDay = visitorPerDay;
	}

	public List<String> getCategory() {
		return category;
	}

	public void setCategory(List<String> category) {
		this.category = category;
	}

	public String getAge() {
		return age;
	}

	public void setAge(String age) {
		this.age = age;
	}

	public String getProgrammingLanguage() {
		return programmingLanguage;
	}

	public void setProgrammingLanguage(String programmingLanguage) {
		this.programmingLanguage = programmingLanguage;
	}

	public String getWebServer() {
		return webServer;
	}

	public void setWebServer(String webServer) {
		this.webServer = webServer;
	}

	public List<String> getJavascriptLibrary() {
		return javascriptLibrary;
	}

	public void setJavascriptLibrary(List<String> javascriptLibrary) {
		this.javascriptLibrary = javascriptLibrary;
	}

	public String getIpAddress() {
		return ipAddress;
	}

	public void setIpAddress(String ipAddress) {
		this.ipAddress = ipAddress;
	}

	public String getWhois() {
		return whois;
	}

	public void setWhois(String whois) {
		this.whois = whois;
	}

	public String getEmail() {
		return email;
	}

	public void setEmail(String email) {
		this.email = email;
	}


	public String getOtherSiteOnHost() {
		return otherSiteOnHost;
	}

	public void setOtherSiteOnHost(String otherSiteOnHost) {
		this.otherSiteOnHost = otherSiteOnHost;
	}

	public String getGoogleAnalytic() {
		return googleAnalytic;
	}

	public void setGoogleAnalytic(String googleAnalytic) {
		this.googleAnalytic = googleAnalytic;
	}

	public String getGoogleAdsense() {
		return googleAdsense;
	}

	public void setGoogleAdsense(String googleAdsense) {
		this.googleAdsense = googleAdsense;
	}

	public int getAlexaGlobeRank() {
		return alexaGlobeRank;
	}

	public void setAlexaGlobeRank(int alexaGlobeRank) {
		this.alexaGlobeRank = alexaGlobeRank;
	}

	public int getGooglePageRank() {
		return googlePageRank;
	}

	public void setGooglePageRank(int googlePageRank) {
		this.googlePageRank = googlePageRank;
	}
	
	public int getAnalysisVisitorsCompete() {
		return analysisVisitorsCompete;
	}

	public void setAnalysisVisitorsCompete(int analysisVisitorsCompete) {
		this.analysisVisitorsCompete = analysisVisitorsCompete;
	}

	public int getAnalysisVisitorsQuantcast() {
		return analysisVisitorsQuantcast;
	}

	public void setAnalysisVisitorsQuantcast(int analysisVisitorsQuantcast) {
		this.analysisVisitorsQuantcast = analysisVisitorsQuantcast;
	}

	public Date getUpdated() {
		return updated;
	}

	public void setUpdated(Date updated) {
		this.updated = updated;
	}

	public List<String> getVisitorCountryName() {
		return visitorCountryName;
	}

	public void setVisitorCountryName(List<String> visitorCountryName) {
		this.visitorCountryName = visitorCountryName;
	}

	public List<String> getVisitorCountryPercent() {
		return visitorCountryPercent;
	}

	public void setVisitorCountryPercent(List<String> visitorCountryPercent) {
		this.visitorCountryPercent = visitorCountryPercent;
	}

	public List<String> getRandomSites() {
		return randomSites;
	}

	public void setRandomSites(List<String> randomSites) {
		this.randomSites = randomSites;
	}

	public List<String> getNearSites() {
		return nearSites;
	}

	public void setNearSites(List<String> nearSites) {
		this.nearSites = nearSites;
	}

	public int getRandom() {
		return random;
	}

	public void setRandom(int random) {
		this.random = random;
	}
}